2025.3.18 特異値分解
正方行列の場合
code:p.py
import numpy as np
a = np.array(1,2,3],0,2,3,[0,0,3) U, S, Vh = np.linalg.svd(a)
print('U:\n', U)
print('S:\n', S)
print('Vh:\n', Vh)
X = U@np.diag(S)@Vh
print('復元:\n', X)
2x3行列の場合
code:p.py
import numpy as np
a = np.array(1,2,3],[0,2,3)
U, S, Vh = np.linalg.svd(a)
print('U:\n', U)
print('S:\n', S)
print('Vh:\n', Vh)
S2 = np.zeros((U.shape0, Vh.shape1)) X = U@S2@Vh
print('復元:\n', X)